package Principal;

enum TipSimb {
	UDEC, FUNC, UFUNC, VAR, PARAM
}

public class Simbolos {
 

	public Simbolos(String nombre, TipSimb tipo, int blockLevel, int tam,
			int dir) {
		super();
		this.nombre = nombre;
		this.tipo = tipo;
		this.blockLevel = blockLevel;
		this.tam = tam;
		this.dir = dir;
	}

	private String nombre ="";
	private TipSimb tipo = TipSimb.UDEC;
	private int blockLevel=0;
	private int tam = 0;  // n de palabras q ocupa en memoria
	private int dir = -1;  // direccion en la memoria
				
	public int getTam() {
		return tam;
	}
	public void setTam(int tam) {
		this.tam = tam;
	}
	public int getDir() {
		return dir;
	}
	public void setDir(int dir) {
		this.dir = dir;
	}

	public String getNombre() {
		return nombre;
	}
	public void setNombre(String nombre) {
		this.nombre = nombre;
	}
	public TipSimb getTipo() {
		return tipo;
	}
	public void setTipo(TipSimb tipo) {
		this.tipo = tipo;
	}
	public int getBlockLevel() {
		return blockLevel;
	}
	public void setBlockLevel(int blockLevel) {
		this.blockLevel = blockLevel;
	}
	
	public String toString() {
		String aux = "";
		
		aux = "{ " + this.nombre + "(" + this.blockLevel + ") " +  this.tipo + " #"+ this.dir + " }";
		
		return aux;		
	}
}
